perm filename LOADUP[PAT,LMM] blob sn#097618 filedate 1974-04-15 generic text, type T, neo UTF8
(FILECREATED "15-APR-74 06:19:32" LOADUP)


  (LISPXPRINT (QUOTE LOADUPVARS)
	      T)
  (RPAQQ LOADUPVARS ((FNS STARTUP STARTLOAD LOADDEF FILEOF FILESOF LD)
	  (VARS STRGENFILES STRGENAUXFILES)
	  (ADVICE START)
	  (PROP FILEDEF EXPLAIN)))
(DEFINEQ

(STARTUP
  [LAMBDA (TYPE)                                (* Used to create the system)
    (PROG ((NOTSOURCEFLG (NOT (MEMB (QUOTE SOURCES)
				    TYPE)))
	   (NOTCOMFLG (MEMB (QUOTE NOCOMS)
			    TYPE)))
          (MAPC
	    (OR (CDR (ASSOC (QUOTE FILES)
			    TYPE))
		STRGENFILES)
	    (FUNCTION (LAMBDA (FILE COMFILE GOTCOM)
		(SETQ COMFILE (PACK (LIST FILE ".COM")))
		[SETQ GOTCOM
		  (OR
		    (MEMB COMFILE FILELST)
		    (AND
		      (NOT NOTCOMFLG)
		      (INFILEP COMFILE)
		      (PROG ((OLD LINKEDFNS))
			    (PROG1
			      [RESETVAR NOLINKMESS T
				(RESETVAR LINKEDFNS NIL
				  (PROG1 (STARTLOAD COMFILE)
					 (SETQ
					    OLD (NCONC
						   OLD (PROG1 LINKEDFNS
							      (RELINK LINKEDFNS]
			      (SETQ LINKEDFNS OLD]
		(OR (AND NOTSOURCEFLG GOTCOM)
		    (STARTLOAD FILE (AND GOTCOM (QUOTE PROP])

(STARTLOAD
(LAMBDA (FILE LOADFLG EVENIFLOADED) (COND ((AND (NOT EVENIFLOADED) (MEMB FILE
FILELST)) (LISPXPRINT (CONS FILE (QUOTE (already loaded))) T)) (T (LOAD FILE
LOADFLG))) FILE))

(LOADDEF
(LAMBDA (FN ONLYTHISONEFLG) (* Loads the definitions of all of the functions
in the file which contains FN - However, if ONLYTHISONEFLG is on, just loads
the definition of this one function) (PROG ((FILE (NAMEFIELD (OR (FILEOF (OR
FN (SETQ FN (PROGN (LISPXPRIN1 "=" T) (LISPXPRINT LASTWORD T))))) (ERROR FN
"not found on any file"))))) (PROG1 (COND (ONLYTHISONEFLG (LOADFNS (LIST FN)
FILE (QUOTE PROP))) (T (STARTLOAD FILE (QUOTE PROP)))) (RPLACA (QUOTE LASTWORD)
FN)))))

(FILEOF
(LAMBDA (FN) (CAR (SOME FILELST (FUNCTION (LAMBDA (FILE) (OR (MEMB FN (CAR
(FILEFNS FILE))) (NEWFILE2 FN (CAR (FILEVARS FILE)) (QUOTE FNS)))))))))

(FILESOF
(LAMBDA (FN) (SUBSET FILELST (FUNCTION (LAMBDA (FILE) (OR (MEMB FN (CAR (FILEFNS
FILE))) (NEWFILE2 FN (CAR (FILEVARS FILE)) (QUOTE FNS))))))))

(LD
(LAMBDA (X) (LOADDEF X T)))
)
  (RPAQQ STRGENFILES
	 (LOADUP TOTAL GENLISP CL CYCLIC CYCLIC2 DICT CATALOG DRAW EXAMPLE 
		 EXPAND GROUP LABELER STRUCTURE TOPLEVEL TREE BITLABELER))
  (RPAQQ STRGENAUXFILES (EXPLAIN DATADICT))
(DEFLIST(QUOTE(
  [START (NIL (BEFORE NIL (OR (LISTP (CAR (QUOTE CATALOG.DICTIONARY)))
			      (MAKTAB NIL NIL (QUOTE CATALOG.DICTIONARY)
				      (QUOTE <MASINTER>CATALOG.INDEX]
))(QUOTE READVICE))

(DEFLIST(QUOTE(
  (EXPLAIN NIL)
))(QUOTE FILEDEF))

STOP